Flask与数据库:SQLAlchemy模型定义
这篇文章介绍了Flask通过SQLAlchemy(ORM工具)实现数据库交互的方法,核心步骤如下: 首先,需安装Flask和Flask-SQLAlchemy,开发环境用SQLite无需额外驱动,其他数据库需对应驱动(如MySQL用pymysql)。 接着,初始化Flask应用与SQLAlchemy,配置SQLite数据库连接(URI为sqlite:///mydatabase.db)并关闭修改跟踪以减少开销。 然后,定义模型:通过继承db.Model的Python类映射数据库表,类属性对应字段(如id设为主键,username设为非空唯一字符串),支持多种字段类型(Integer、String、Text等);表关系用外键和relationship定义(如用户与文章的一对多关系)。 创建表通过db.create_all()在应用上下文中执行,自动生成表结构。 最后,通过db.session实现CRUD操作:新增用add+commit,查询用query.all/filter_by,更新直接修改属性后commit,删除用delete+commit。 总结:模型定义是Flask数据库交互的基础,可通过类属性映射字段、关系,实现数据操作,后续可扩展表关系
阅读全文